package com.zbkj.crmeb.front.request;

import java.io.Serializable;
import java.math.BigDecimal;

import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Author: Rede
 * @DateTime: 2024-10-01 17:09
 * @Description: 商户订单信息
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="OrderInfoRequest对象")
public class OrderInfoRequest implements Serializable {

    private static final long serialVersionUID = -8120461008442473624L;

    /** 必传:商户系统唯一交易流水号。由商户自定义。 */
    private String txn_seqno;

    /** 必传:
     * 商户系统交易时间。
     * 格式：yyyyMMddHHmmss。
     */
    private String txn_time;

    /** 必传:订单总金额，单位为元，精确到小数点后两位。 */
    private BigDecimal total_amount;

    /** 手续费金额。单位为元，精确到小数点后两位。会自动收取到平台商户的自有资金账户。金额设定支持低于订单总金额的20%，或者低于10元但不高于订单金额。 */
    private BigDecimal fee_amount;

    /** 订单信息，在查询API和支付通知中原样返回，可作为自定义参数使用。 */
    private String order_info;

    /** 商品描述信息。 */
    private String goods_name;

    /** 订单及商品展示地址。 */
    private String goods_url;

    /**
     * 优惠券支付模式：默认，CONSUME_SUCCESS_PAY。
     * CONSUME_SUCCESS_PAY：支付成功后，转到担保账户。
     * SECURED_CONFIRM_AUTO：担保确认后转到担保账户，优惠券金额由系统计算。
     * SECURED_CONFIRM_SUBMIT：担保确认后转到担保账户，优惠券金额由商户上送
     */
    private String coupon_pay_mode;

}
